The present invention relates to systems and methods for configuring network devices such as routers and switches. More specifically, the invention relates to using hierarchical directories to aggregate configuration information for specific network devices.
In large complex networks, it is necessary to configure and reconfigure many network devices such as routers and switches with network information such as interface IP addresses, security policies, quality of service parameters for traffic shaping, etc. Each network device in a given network will have a unique set of such configuration parameters. Nevertheless, many individual configuration parameters within the larger set of device-specific configuration parameters are common to a group of network devices.
In conventional approaches to configuring or reconfiguring network devices, a network administrator must provide the full complement of configuration parameters directly to the network device or indirectly through a network server storing such parameters. In either case, the entire set of device parameters must be provided for each and every device on the network. Current server-based procedures for automatically configuring network devices require using BOOTP/TFTP or a related protocol to obtain the complete set of configuration parameters from a server and download them to the specific network device requiring configuration. The entire configuration file for each router handled by the server must be separately stored.
Unfortunately, the current procedures for configuring network devices all involve significant effort in providing the complete set of configuration information directly to the network device or indirectly to that device through a network server. What is needed therefore is an improved method for automatically generating the configuration information and for configuring network devices.
The present invention provides client network devices and configuration servers and associated methods for automatically configuring the client network devices. This may be accomplished by arranging configuration information for multiple network devices in a multi-level directory. Leaf nodes in a hierarchical directory may correspond to specific network devices. Configuration information associated with such leaf nodes may be specific to the associated network device. Configuration information common to a group of network devices may be provided with nodes at higher levels in the hierarchy. All network devices grouped under such higher levels inherit the configuration parameters from the higher level nodes. This arrangement reduces the amount of storage required for configuring multiple network devices. During configuration, all nodes from a leaf to the root of a directory may be traversed. The parameters associated with each node in the traversed path are aggregated to obtain a set of parameters provided to the client network device.
Thus, the present invention provides methods and apparatus for configuring a network device. The network device to be configured is identified. An entry for the network device is identified from among a collection of network device entries in a directory. Configuration parameters for the network device are obtained from a plurality of nodes in the directory.
According to one embodiment, IP addresses for interfaces of the network device are obtained, and configuration parameters for the network device are obtained from an LDAP server.
According to another embodiment, a server apparatus is provided which provides configuration information for a plurality of network devices. The server apparatus includes one or more processors, and a memory coupled to the one or more processors. A multi-level grouping of the plurality of network devices is logically represented on at least one of the processors and memory. Configuration parameter containers associated with specific levels of the grouping are also provided. At least some of the containers of parameters are associated with multiple network devices.
According to yet another embodiment, a server apparatus is provided which provides configuration information for a plurality of network devices. The server apparatus includes a multi-level grouping of nodes representing the plurality of network devices. The server apparatus also includes configuration parameter containers associated with specific nodes of the grouping. At least some of the containers specify parameters associated with multiple network devices. The server apparatus further includes means for identifying nodes associated with specific network devices, and means for obtaining configuration parameters for specific network devices.